﻿#pragma warning(disable: 4996)
#pragma warning(disable: 6031)

/*
本题要求编写程序，针对输入的N个字符串，输出其中最长的字符串。

输入格式：
输入第一行给出正整数N；随后N行，每行给出一个长度小于80的非空字符串，其中不会出现换行符，空格，制表符。

输出格式：
在一行中用以下格式输出最长的字符串：

The longest is: 最长的字符串
如果字符串的长度相同，则输出先输入的字符串。

输入样例：
5
li
wang
zhang
jin
xiang
输出样例：
The longest is: zhang
*/

#include <stdlib.h>
#include <stdio.h>
#include <string.h>

char buf[81] = { 0 };
int n = 0;

int cmpfunc(const void* a, const void* b)
{
	return (*(char*)a - *(char*)b);
}

char* str_find(const char* s, char c) {
	char* p = s;
	while (*p) {
		if (*p == c)
			return p;
		p++;
	}
	return NULL;
}

void read_data() {
	scanf("%d", &n);
	int m = 0;
	int m2 = 0;
	char temp[81];
	for (int i = 0; i < n; ++i) {
		gets(temp);
		m2 = strlen(temp);
		if (m2 > m) {
			strcpy(buf, temp);
			m = m2;
		}
	}
}

void solve() {
	printf("The longest is: %s\n", buf);
}

int main()
{
	freopen("D:/Develop/GitRepos/MOOC/浙江大学/数据结构/201906/DataStructure/M2019秋C入门和进阶练习集/7-61.txt", "r", stdin);
	read_data();
	solve();
	return 0;
}

//freopen("D:/Develop/GitRepos/MOOC/浙江大学/数据结构/201906/DataStructure/M2019秋C入门和进阶练习集/7-50.txt", "r", stdin);
